import ModuleGlobal from "../../ModuleGlobal";
import { BaseTimer } from "../base/BaseTimer";
import { ComUtil } from "./util/ComUtil";
import { MsgId } from "../cfg/Msg";

/**
 * 调试管理
 */
export const debugMgr = _ as DebugMgr;
export class DebugMgr extends BaseTimer {

    /** 是否开启调试 */
    isDebug = true;
    /** 展开协议 */
    openMsg = false;

    init() {
        (debugMgr as any) = this;
    }

    logOnMsg(msgId: MsgId, msg: any) {
        if (!this.isDebug) return;
        let str = `收到协议 <<< ${msgId}(${MsgId[msgId]}) `;
        this.openMsg ? console.log(str + JSON.stringify(msg)) : console.log(str, msg);
    }

    logSendMsg(msgId: MsgId, msg: any) {
        if (!this.isDebug) return;
        let str = `发送协议 >>> ${msgId}(${MsgId[msgId]}) `;
        this.openMsg ? console.log(str + JSON.stringify(msg)) : console.log(str, msg);
    }

    moduleGlobal() {
        this.isDebug && this.callLater(ModuleGlobal);
    }

}